package com.cn.wxwinnie.java.datatype.shifting;

/**
 * 说明：移位运算 是将所有数字移位 而不是将小数点移位 艹，这个错误我犯了多久了啊。 而且只有带符号右移（>>>），没有带符号左移
 * 
 * @author 潇湘暮雨 E-mail:wxwinnie@hotmail.com
 * 
 * @version 创建时间：2014年3月29日 下午3:53:18
 * 
 */
public class TestShifting {
	public static void main(String[] args) {
		int i = 7;
		// 移位运算 是将所有数字移位 而不是将小数点移位 艹，这个错误我犯了多久了啊。
		System.out.println("正数计算乘以8（带符号左移3位）：" + (i << 3)); // 计算 7*8 左移位操作

		int j = -3;
		System.out.println("负数计算乘以8（带符号左移3位）：" + (j << 3));

		i = 24;
		System.out.println("正数计算除以8（带符号右移3位）：" + (i >> 3));

		j = -1;
		System.out.println("负数计算除以8（带符号右移3位）：" + (j >> 3));

		// 无符号右移
		// 按二进制形式把所有的数字向右移动对应巍峨位数，低位移出（舍弃），高位的空位补零。
		// 对于正数来说和带符号右移相同，对于负数来说不同。
		System.out.println("无符号右移：" + (j >>> 3));
		
		int 整数 = 3000;//这是一种很蛋疼的变量命名
		System.out.println(整数);

	}
}
